package io.capsulode.tunnel.blockrepo;

import io.capsulode.tunnel.blockrepo.pac.Mode;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * PAC 文件默认值.
 */
@Component
@ConfigurationProperties("pac")
public class PacConfiguration {
    /**
     * SOCKS 代理端口 默认值.
     */
    private int defaultPort = 7777;
    /**
     * HTTP 代理端口默认值.
     */
    private int defaultHttpPort = 7776;
    /**
     * 自动代理模式. 白名单或黑名单。
     */
    private Mode mode=Mode.BLACKLIST;

    /**
     * SOCKS 代理端口 默认值.
     */
    public int getDefaultPort() {
        return defaultPort;
    }

    /**
     * SOCKS 代理端口 默认值.
     */
    public void setDefaultPort(int defaultPort) {
        this.defaultPort = defaultPort;
    }

    /**
     * HTTP 代理端口默认值.
     */
    public int getDefaultHttpPort() {
        return defaultHttpPort;
    }

    /**
     * HTTP 代理端口默认值.
     */
    public void setDefaultHttpPort(int defaultHttpPort) {
        this.defaultHttpPort = defaultHttpPort;
    }

    /**
     * 自动代理模式. 白名单或黑名单。
     */
    public Mode getMode() {
        return mode;
    }

    /**
     * 自动代理模式. 白名单或黑名单。
     */
    public void setMode(Mode mode) {
        this.mode = mode;
    }
}
